/**
 * 设置个人资料接口
 */

//引入Q模块
let Q = require('q');
//引入公共函数
let util = require('../../util');

//setMyRoleInfo接口入口文件
let index = function(getData, postData, config, redis, db) {
	let deferred = Q.defer();
	if(postData.serviceId) {
		redis.get(postData._3rdSession).then(function(data) {
			if(!data) {
				//没有足够的权限删除角色
				deferred.reject('-0173');
			}
			else {
				data = JSON.parse(data);
				db.select('allowServices', {id: data.openId}).then(function(service) {
					if(service.length == 0 || service[0].auth != 'admin') {
						//没有足够的权限删除角色
						deferred.reject('-0173');
						return deferred.promise;
					}
					else {
						return db.remove('allowServices', {id: postData.serviceId});
					}
				}, function() {
					//查找对应的管理角色失败
					deferred.reject('-0174');
				}).then(function() {
					deferred.resolve(1);
				}, function() {
					//删除角色失败
					deferred.reject('-0175');
				});
			}
		}, function() {
			//redis读取管理员信息失败
			deferred.reject('-0172');
		});
	}
	else {
		//删除的角色未指定serviceId
		deferred.reject('-0171');
	}
	return deferred.promise;
}

//暴露接口
module.exports = {
	index: index
}